/*
 * ========================================================
 * Copyright(c) 2014 杭州偶尔科技-版权所有
 * ========================================================
 * 本软件由杭州偶尔科技所有, 未经书面许可, 任何单位和个人不得以
 * 任何形式复制代码的部分或全部, 并以任何形式传播。
 * 公司网址
 * 
 * 			http://www.kkkd.com/
 * 
 * ========================================================
 */
package com.simon.mengkou.future.handler;

import android.content.Context;

import com.ouertech.android.agm.lib.base.future.http.HttpEvent;
import com.ouertech.android.agm.lib.base.utils.UtilList;
import com.simon.mengkou.data.bean.base.Address;
import com.simon.mengkou.data.cache.DataCache;
import com.simon.mengkou.data.cache.DataCacheImpl;
import com.simon.mengkou.future.base.OuerHttpHandler;
import com.simon.mengkou.system.global.OuerApplication;

import java.util.List;

/**
 * @author : Zhenshui.Xia
 * @since : 2016/3/20.
 * desc    : 获取收货地址列表业务逻辑
 */
public class AddressListHandler extends OuerHttpHandler {

    public AddressListHandler(Context context) {
        super(context);
    }

    @Override
    public void onHandle(HttpEvent evt) throws Exception {
        List<Address> addresses = (List<Address>) evt.getData();
        //添加默认地址
        DataCache cache = OuerApplication.mCacheFactory
                .getCache(DataCacheImpl.AddressListCache.class, OuerApplication.mUser.getUserId());
        cache.save(addresses);

        if(UtilList.isNotEmpty(addresses)) {
            for(Address address: addresses) {
                if(address.isDefault()) {
                    OuerApplication.mCacheFactory.getCache(DataCacheImpl.AddressDefaultCache.class,
                            OuerApplication.mUser.getUserId()).save(address);
                    break;
                }
            }
        }

        evt.getFuture().commitComplete(addresses);
    }
}
